/* @author cerimice */
package Dialogos.Modal.RecargaCartucho;

import Logica.Modulo.RecargaCartucho.SeguimientoRecargaCartuchoLogica;
import Sistema.Configuracion;
import com.vaadin.terminal.ThemeResource;
import com.vaadin.ui.Alignment;
import com.vaadin.ui.Button;
import com.vaadin.ui.HorizontalLayout;
import com.vaadin.ui.TextArea;
import com.vaadin.ui.TextField;
import com.vaadin.ui.VerticalLayout;
import com.vaadin.ui.Window;
import java.util.Date;

public class SeguimientoRecargaCartuchoDlg extends Window
    {
    private SeguimientoRecargaCartuchoLogica logica;
    
    private TextField   clave,cartucho,fecha;
    private TextArea    comentario;
    private Button      agregar,cancelar;
    
    public SeguimientoRecargaCartuchoDlg(String claveCartucho)
        {
        logica = new SeguimientoRecargaCartuchoLogica();
        iniciarComponentes(claveCartucho);
        }
    
    private void iniciarComponentes(String claveCartucho)
        {
        clave = new TextField("CLAVE");
            clave.setEnabled(false);
            clave.setWidth("250px");
        fecha = new TextField("FECHA",Configuracion.getFormatoFechaCorta().format(new Date()));
            fecha.setEnabled(false);
            fecha.setWidth("250px");
        cartucho = new TextField("CARTUCHO",claveCartucho);
            cartucho.setWidth("250px");
            cartucho.setEnabled(false);
        comentario = new TextArea("COMENTARIO");
            comentario.setWidth("250px");
            comentario.setHeight("50px");
        agregar = new Button();
            agregar.setIcon(new ThemeResource("icons/personal/aceptar.png"));
        cancelar = new Button();
            cancelar.setIcon(new ThemeResource("icons/personal/cancelar.png"));
        
        agregar.addListener(new Button.ClickListener()     {@Override public void buttonClick(Button.ClickEvent event){agregarSeguimiento();}});
        cancelar.addListener(new Button.ClickListener()    {@Override public void buttonClick(Button.ClickEvent event){cancelarSeguimiento();}});

        VerticalLayout principal = new VerticalLayout();
            VerticalLayout seccionDatos = new VerticalLayout();
                seccionDatos.setWidth("260px");
                seccionDatos.addComponent(clave);
                seccionDatos.addComponent(fecha);
                seccionDatos.addComponent(cartucho);
                seccionDatos.addComponent(comentario);
            HorizontalLayout seccionOperaciones = new HorizontalLayout();
                seccionOperaciones.addComponent(agregar);
                seccionOperaciones.addComponent(cancelar);
            principal.addComponent(seccionDatos);
            principal.addComponent(seccionOperaciones);
            principal.setComponentAlignment(seccionDatos, Alignment.TOP_CENTER);
            principal.setComponentAlignment(seccionOperaciones, Alignment.TOP_CENTER);
        
        this.setContent(principal);
        this.setModal(true);
        this.setCaption("Seguimiento de recarga");
        }
    
    private void agregarSeguimiento()
        {
        try
            {
            String cartuchoDts  = (String)cartucho.getValue();
            String comentarioDts= (String)comentario.getValue();
            
            if(!logica.agregarObjeto(cartuchoDts,comentarioDts))
                {getWindow().showNotification("Seguimiento cartucho recarga...",logica.getError(),Notification.TYPE_WARNING_MESSAGE); return;}
            this.close();
            }
        catch(Exception ex)
            {getWindow().showNotification("Seguimiento cartucho recarga...","Por favor verifique sus datos",Notification.TYPE_WARNING_MESSAGE);}
        }
    
    private void cancelarSeguimiento()
        {this.close();}
    }
